﻿// -----------------------------------------------------------------------
// <copyright file="EnergySource.cs" company="">
// TODO: Update copyright text.
// </copyright>
// -----------------------------------------------------------------------

namespace Ex03.GarageLogic
{
    using System;
    using System.Collections.Generic;
    using System.Text;

    /// <summary>
    /// TODO: Update summary.
    /// </summary>
    public abstract class EnergySource
    {
        protected float m_MaxEnergyCapacity;

        protected eEnergySourceType m_EnergyType;

        protected float m_CurrentEnergyQuantity;

        public abstract void RechargeEnergySource(float i_AmountToCharge, eEnergySourceType i_FuelType);

        public abstract StringBuilder GetEnergySourceDataPrint();

        public float MaxEnergyCapacity
        {
            get
            {
                return m_MaxEnergyCapacity;
            }

            set
            {
                m_MaxEnergyCapacity = value;
            }
        }

        public float CurrentEnergyQuantity
        {
            get
            {
                return m_CurrentEnergyQuantity;
            }

            set
            {
                m_CurrentEnergyQuantity = value;
            }
        }

        public enum eEnergySourceType
        {
            Soler = 1,
            Octan95,
            Octan96,
            Octan98,
            Electricity
        }
    }
}
